<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>gen_measure_arc [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_1dmeasuring.html">1D 测量</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">gen_measure_arc</span><span data-if="c" style="display:none;">T_gen_measure_arc</span><span data-if="cpp" style="display:none;">GenMeasureArc</span><span data-if="dotnet" style="display:none;">GenMeasureArc</span><span data-if="python" style="display:none;">gen_measure_arc</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">gen_measure_arc</span><span data-if="c" style="display:none;">T_gen_measure_arc</span><span data-if="cpp" style="display:none;">GenMeasureArc</span><span data-if="dotnet" style="display:none;">GenMeasureArc</span><span data-if="python" style="display:none;">gen_measure_arc</span></code> — Prepare the extraction of straight edges perpendicular to an annular arc.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>gen_measure_arc</b>( :  : <a href="#CenterRow"><i>CenterRow</i></a>, <a href="#CenterCol"><i>CenterCol</i></a>, <a href="#Radius"><i>Radius</i></a>, <a href="#AngleStart"><i>AngleStart</i></a>, <a href="#AngleExtent"><i>AngleExtent</i></a>, <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, <a href="#Width"><i>Width</i></a>, <a href="#Height"><i>Height</i></a>, <a href="#Interpolation"><i>Interpolation</i></a> : <a href="#MeasureHandle"><i>MeasureHandle</i></a>)</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_gen_measure_arc</b>(const Htuple <a href="#CenterRow"><i>CenterRow</i></a>, const Htuple <a href="#CenterCol"><i>CenterCol</i></a>, const Htuple <a href="#Radius"><i>Radius</i></a>, const Htuple <a href="#AngleStart"><i>AngleStart</i></a>, const Htuple <a href="#AngleExtent"><i>AngleExtent</i></a>, const Htuple <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, const Htuple <a href="#Width"><i>Width</i></a>, const Htuple <a href="#Height"><i>Height</i></a>, const Htuple <a href="#Interpolation"><i>Interpolation</i></a>, Htuple* <a href="#MeasureHandle"><i>MeasureHandle</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>GenMeasureArc</b>(const HTuple&amp; <a href="#CenterRow"><i>CenterRow</i></a>, const HTuple&amp; <a href="#CenterCol"><i>CenterCol</i></a>, const HTuple&amp; <a href="#Radius"><i>Radius</i></a>, const HTuple&amp; <a href="#AngleStart"><i>AngleStart</i></a>, const HTuple&amp; <a href="#AngleExtent"><i>AngleExtent</i></a>, const HTuple&amp; <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, const HTuple&amp; <a href="#Width"><i>Width</i></a>, const HTuple&amp; <a href="#Height"><i>Height</i></a>, const HTuple&amp; <a href="#Interpolation"><i>Interpolation</i></a>, HTuple* <a href="#MeasureHandle"><i>MeasureHandle</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>HMeasure</b>(const HTuple&amp; <a href="#CenterRow"><i>CenterRow</i></a>, const HTuple&amp; <a href="#CenterCol"><i>CenterCol</i></a>, const HTuple&amp; <a href="#Radius"><i>Radius</i></a>, const HTuple&amp; <a href="#AngleStart"><i>AngleStart</i></a>, const HTuple&amp; <a href="#AngleExtent"><i>AngleExtent</i></a>, const HTuple&amp; <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const HString&amp; <a href="#Interpolation"><i>Interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>HMeasure</b>(double <a href="#CenterRow"><i>CenterRow</i></a>, double <a href="#CenterCol"><i>CenterCol</i></a>, double <a href="#Radius"><i>Radius</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const HString&amp; <a href="#Interpolation"><i>Interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>HMeasure</b>(double <a href="#CenterRow"><i>CenterRow</i></a>, double <a href="#CenterCol"><i>CenterCol</i></a>, double <a href="#Radius"><i>Radius</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const char* <a href="#Interpolation"><i>Interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>HMeasure</b>(double <a href="#CenterRow"><i>CenterRow</i></a>, double <a href="#CenterCol"><i>CenterCol</i></a>, double <a href="#Radius"><i>Radius</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const wchar_t* <a href="#Interpolation"><i>Interpolation</i></a>)  <span class="signnote">
            (
            Windows only)
          </span></code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>GenMeasureArc</b>(const HTuple&amp; <a href="#CenterRow"><i>CenterRow</i></a>, const HTuple&amp; <a href="#CenterCol"><i>CenterCol</i></a>, const HTuple&amp; <a href="#Radius"><i>Radius</i></a>, const HTuple&amp; <a href="#AngleStart"><i>AngleStart</i></a>, const HTuple&amp; <a href="#AngleExtent"><i>AngleExtent</i></a>, const HTuple&amp; <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const HString&amp; <a href="#Interpolation"><i>Interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>GenMeasureArc</b>(double <a href="#CenterRow"><i>CenterRow</i></a>, double <a href="#CenterCol"><i>CenterCol</i></a>, double <a href="#Radius"><i>Radius</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const HString&amp; <a href="#Interpolation"><i>Interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>GenMeasureArc</b>(double <a href="#CenterRow"><i>CenterRow</i></a>, double <a href="#CenterCol"><i>CenterCol</i></a>, double <a href="#Radius"><i>Radius</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const char* <a href="#Interpolation"><i>Interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>::<b>GenMeasureArc</b>(double <a href="#CenterRow"><i>CenterRow</i></a>, double <a href="#CenterCol"><i>CenterCol</i></a>, double <a href="#Radius"><i>Radius</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#AnnulusRadius"><i>AnnulusRadius</i></a>, Hlong <a href="#Width"><i>Width</i></a>, Hlong <a href="#Height"><i>Height</i></a>, const wchar_t* <a href="#Interpolation"><i>Interpolation</i></a>)  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>GenMeasureArc</b>(<a href="HTuple.html">HTuple</a> <a href="#CenterRow"><i>centerRow</i></a>, <a href="HTuple.html">HTuple</a> <a href="#CenterCol"><i>centerCol</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Radius"><i>radius</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleStart"><i>angleStart</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleExtent"><i>angleExtent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AnnulusRadius"><i>annulusRadius</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Width"><i>width</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Height"><i>height</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Interpolation"><i>interpolation</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#MeasureHandle"><i>measureHandle</i></a>)</code></p>
<p>
<code>public <a href="HMeasure.html">HMeasure</a>(<a href="HTuple.html">HTuple</a> <a href="#CenterRow"><i>centerRow</i></a>, <a href="HTuple.html">HTuple</a> <a href="#CenterCol"><i>centerCol</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Radius"><i>radius</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleStart"><i>angleStart</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleExtent"><i>angleExtent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AnnulusRadius"><i>annulusRadius</i></a>, int <a href="#Width"><i>width</i></a>, int <a href="#Height"><i>height</i></a>, string <a href="#Interpolation"><i>interpolation</i></a>)</code></p>
<p>
<code>public <a href="HMeasure.html">HMeasure</a>(double <a href="#CenterRow"><i>centerRow</i></a>, double <a href="#CenterCol"><i>centerCol</i></a>, double <a href="#Radius"><i>radius</i></a>, double <a href="#AngleStart"><i>angleStart</i></a>, double <a href="#AngleExtent"><i>angleExtent</i></a>, double <a href="#AnnulusRadius"><i>annulusRadius</i></a>, int <a href="#Width"><i>width</i></a>, int <a href="#Height"><i>height</i></a>, string <a href="#Interpolation"><i>interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>.<b>GenMeasureArc</b>(<a href="HTuple.html">HTuple</a> <a href="#CenterRow"><i>centerRow</i></a>, <a href="HTuple.html">HTuple</a> <a href="#CenterCol"><i>centerCol</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Radius"><i>radius</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleStart"><i>angleStart</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleExtent"><i>angleExtent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AnnulusRadius"><i>annulusRadius</i></a>, int <a href="#Width"><i>width</i></a>, int <a href="#Height"><i>height</i></a>, string <a href="#Interpolation"><i>interpolation</i></a>)</code></p>
<p>
<code>void <a href="HMeasure.html">HMeasure</a>.<b>GenMeasureArc</b>(double <a href="#CenterRow"><i>centerRow</i></a>, double <a href="#CenterCol"><i>centerCol</i></a>, double <a href="#Radius"><i>radius</i></a>, double <a href="#AngleStart"><i>angleStart</i></a>, double <a href="#AngleExtent"><i>angleExtent</i></a>, double <a href="#AnnulusRadius"><i>annulusRadius</i></a>, int <a href="#Width"><i>width</i></a>, int <a href="#Height"><i>height</i></a>, string <a href="#Interpolation"><i>interpolation</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>gen_measure_arc</b>(<a href="#CenterRow"><i>center_row</i></a>: Union[int, float], <a href="#CenterCol"><i>center_col</i></a>: Union[int, float], <a href="#Radius"><i>radius</i></a>: Union[int, float], <a href="#AngleStart"><i>angle_start</i></a>: Union[int, float], <a href="#AngleExtent"><i>angle_extent</i></a>: Union[int, float], <a href="#AnnulusRadius"><i>annulus_radius</i></a>: Union[int, float], <a href="#Width"><i>width</i></a>: int, <a href="#Height"><i>height</i></a>: int, <a href="#Interpolation"><i>interpolation</i></a>: str) -&gt; HHandle</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p><code><span data-if="hdevelop" style="display:inline">gen_measure_arc</span><span data-if="c" style="display:none">gen_measure_arc</span><span data-if="cpp" style="display:none">GenMeasureArc</span><span data-if="com" style="display:none">GenMeasureArc</span><span data-if="dotnet" style="display:none">GenMeasureArc</span><span data-if="python" style="display:none">gen_measure_arc</span></code> prepares the extraction of <em>straight</em>
edges which lie <em>perpendicular</em> to an annular arc.  Here,
annular arc denotes a circular arc with an associated width.  The
center of the arc is passed in the parameters <a href="#CenterRow"><i><code><span data-if="hdevelop" style="display:inline">CenterRow</span><span data-if="c" style="display:none">CenterRow</span><span data-if="cpp" style="display:none">CenterRow</span><span data-if="com" style="display:none">CenterRow</span><span data-if="dotnet" style="display:none">centerRow</span><span data-if="python" style="display:none">center_row</span></code></i></a> and
<a href="#CenterCol"><i><code><span data-if="hdevelop" style="display:inline">CenterCol</span><span data-if="c" style="display:none">CenterCol</span><span data-if="cpp" style="display:none">CenterCol</span><span data-if="com" style="display:none">CenterCol</span><span data-if="dotnet" style="display:none">centerCol</span><span data-if="python" style="display:none">center_col</span></code></i></a>, its radius in <a href="#Radius"><i><code><span data-if="hdevelop" style="display:inline">Radius</span><span data-if="c" style="display:none">Radius</span><span data-if="cpp" style="display:none">Radius</span><span data-if="com" style="display:none">Radius</span><span data-if="dotnet" style="display:none">radius</span><span data-if="python" style="display:none">radius</span></code></i></a>, the starting
angle in <a href="#AngleStart"><i><code><span data-if="hdevelop" style="display:inline">AngleStart</span><span data-if="c" style="display:none">AngleStart</span><span data-if="cpp" style="display:none">AngleStart</span><span data-if="com" style="display:none">AngleStart</span><span data-if="dotnet" style="display:none">angleStart</span><span data-if="python" style="display:none">angle_start</span></code></i></a>, and its angular extent relative to the
starting angle in <a href="#AngleExtent"><i><code><span data-if="hdevelop" style="display:inline">AngleExtent</span><span data-if="c" style="display:none">AngleExtent</span><span data-if="cpp" style="display:none">AngleExtent</span><span data-if="com" style="display:none">AngleExtent</span><span data-if="dotnet" style="display:none">angleExtent</span><span data-if="python" style="display:none">angle_extent</span></code></i></a>.  If <a href="#AngleExtent"><i><code><span data-if="hdevelop" style="display:inline">AngleExtent</span><span data-if="c" style="display:none">AngleExtent</span><span data-if="cpp" style="display:none">AngleExtent</span><span data-if="com" style="display:none">AngleExtent</span><span data-if="dotnet" style="display:none">angleExtent</span><span data-if="python" style="display:none">angle_extent</span></code></i></a> &gt;
0, an arc with counterclockwise orientation is generated, otherwise
an arc with clockwise orientation.  The radius of the annular arc,
i.e., half its width, is determined by <a href="#AnnulusRadius"><i><code><span data-if="hdevelop" style="display:inline">AnnulusRadius</span><span data-if="c" style="display:none">AnnulusRadius</span><span data-if="cpp" style="display:none">AnnulusRadius</span><span data-if="com" style="display:none">AnnulusRadius</span><span data-if="dotnet" style="display:none">annulusRadius</span><span data-if="python" style="display:none">annulus_radius</span></code></i></a>.
</p>
<p>For an explanation of the concept of 1D 测量 see the introduction of
chapter <a href="toc_1dmeasuring.html">1D 测量</a>.
</p>
<p>The edge extraction algorithm is described in the documentation of
该算子 <a href="measure_pos.html"><code><span data-if="hdevelop" style="display:inline">measure_pos</span><span data-if="c" style="display:none">measure_pos</span><span data-if="cpp" style="display:none">MeasurePos</span><span data-if="com" style="display:none">MeasurePos</span><span data-if="dotnet" style="display:none">MeasurePos</span><span data-if="python" style="display:none">measure_pos</span></code></a>.  As discussed there, different
types of interpolation can be used for the calculation of the
one-dimensional gray value profile.  For <a href="#Interpolation"><i><code><span data-if="hdevelop" style="display:inline">Interpolation</span><span data-if="c" style="display:none">Interpolation</span><span data-if="cpp" style="display:none">Interpolation</span><span data-if="com" style="display:none">Interpolation</span><span data-if="dotnet" style="display:none">interpolation</span><span data-if="python" style="display:none">interpolation</span></code></i></a> =
<i><span data-if="hdevelop" style="display:inline">'nearest_neighbor'</span><span data-if="c" style="display:none">"nearest_neighbor"</span><span data-if="cpp" style="display:none">"nearest_neighbor"</span><span data-if="com" style="display:none">"nearest_neighbor"</span><span data-if="dotnet" style="display:none">"nearest_neighbor"</span><span data-if="python" style="display:none">"nearest_neighbor"</span></i>, the gray values in the measurement are
obtained from the gray values of the closest pixel, i.e., by
constant interpolation.  For <a href="#Interpolation"><i><code><span data-if="hdevelop" style="display:inline">Interpolation</span><span data-if="c" style="display:none">Interpolation</span><span data-if="cpp" style="display:none">Interpolation</span><span data-if="com" style="display:none">Interpolation</span><span data-if="dotnet" style="display:none">interpolation</span><span data-if="python" style="display:none">interpolation</span></code></i></a> =
<i><span data-if="hdevelop" style="display:inline">'bilinear'</span><span data-if="c" style="display:none">"bilinear"</span><span data-if="cpp" style="display:none">"bilinear"</span><span data-if="com" style="display:none">"bilinear"</span><span data-if="dotnet" style="display:none">"bilinear"</span><span data-if="python" style="display:none">"bilinear"</span></i>, bilinear interpolation is used, while for
<a href="#Interpolation"><i><code><span data-if="hdevelop" style="display:inline">Interpolation</span><span data-if="c" style="display:none">Interpolation</span><span data-if="cpp" style="display:none">Interpolation</span><span data-if="com" style="display:none">Interpolation</span><span data-if="dotnet" style="display:none">interpolation</span><span data-if="python" style="display:none">interpolation</span></code></i></a> = <i><span data-if="hdevelop" style="display:inline">'bicubic'</span><span data-if="c" style="display:none">"bicubic"</span><span data-if="cpp" style="display:none">"bicubic"</span><span data-if="com" style="display:none">"bicubic"</span><span data-if="dotnet" style="display:none">"bicubic"</span><span data-if="python" style="display:none">"bicubic"</span></i>, bicubic interpolation
is used.
</p>
<p>To perform the actual measurement at optimal speed, all computations that can
be used for multiple measurements are already performed in 该算子
<code><span data-if="hdevelop" style="display:inline">gen_measure_arc</span><span data-if="c" style="display:none">gen_measure_arc</span><span data-if="cpp" style="display:none">GenMeasureArc</span><span data-if="com" style="display:none">GenMeasureArc</span><span data-if="dotnet" style="display:none">GenMeasureArc</span><span data-if="python" style="display:none">gen_measure_arc</span></code>. For this, an optimized data structure, a so-called
measure object, is constructed and returned in <a href="#MeasureHandle"><i><code><span data-if="hdevelop" style="display:inline">MeasureHandle</span><span data-if="c" style="display:none">MeasureHandle</span><span data-if="cpp" style="display:none">MeasureHandle</span><span data-if="com" style="display:none">MeasureHandle</span><span data-if="dotnet" style="display:none">measureHandle</span><span data-if="python" style="display:none">measure_handle</span></code></i></a>. The
size of the images in which measurements will be performed must be specified
in the parameters <a href="#Width"><i><code><span data-if="hdevelop" style="display:inline">Width</span><span data-if="c" style="display:none">Width</span><span data-if="cpp" style="display:none">Width</span><span data-if="com" style="display:none">Width</span><span data-if="dotnet" style="display:none">width</span><span data-if="python" style="display:none">width</span></code></i></a> and <a href="#Height"><i><code><span data-if="hdevelop" style="display:inline">Height</span><span data-if="c" style="display:none">Height</span><span data-if="cpp" style="display:none">Height</span><span data-if="com" style="display:none">Height</span><span data-if="dotnet" style="display:none">height</span><span data-if="python" style="display:none">height</span></code></i></a>.
</p>
<p>The system parameter <i><span data-if="hdevelop" style="display:inline">'int_zooming'</span><span data-if="c" style="display:none">"int_zooming"</span><span data-if="cpp" style="display:none">"int_zooming"</span><span data-if="com" style="display:none">"int_zooming"</span><span data-if="dotnet" style="display:none">"int_zooming"</span><span data-if="python" style="display:none">"int_zooming"</span></i> (see <a href="set_system.html"><code><span data-if="hdevelop" style="display:inline">set_system</span><span data-if="c" style="display:none">set_system</span><span data-if="cpp" style="display:none">SetSystem</span><span data-if="com" style="display:none">SetSystem</span><span data-if="dotnet" style="display:none">SetSystem</span><span data-if="python" style="display:none">set_system</span></code></a>)
affects the accuracy and speed of the calculations used to construct
the measure object.  If <i><span data-if="hdevelop" style="display:inline">'int_zooming'</span><span data-if="c" style="display:none">"int_zooming"</span><span data-if="cpp" style="display:none">"int_zooming"</span><span data-if="com" style="display:none">"int_zooming"</span><span data-if="dotnet" style="display:none">"int_zooming"</span><span data-if="python" style="display:none">"int_zooming"</span></i> is set to
<i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i>, the internal calculations are performed using fixed
point arithmetic, leading to much shorter execution times.  However,
the geometric accuracy is slightly lower in this mode.  If
<i><span data-if="hdevelop" style="display:inline">'int_zooming'</span><span data-if="c" style="display:none">"int_zooming"</span><span data-if="cpp" style="display:none">"int_zooming"</span><span data-if="com" style="display:none">"int_zooming"</span><span data-if="dotnet" style="display:none">"int_zooming"</span><span data-if="python" style="display:none">"int_zooming"</span></i> is set to <i><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span></i>, the internal
calculations are performed using floating point arithmetic, leading
to the maximum geometric accuracy, but also to significantly
increased execution times.</p>
<h2 id="sec_attention">注意</h2>
<p>Note that when using bilinear or bicubic interpolation, not only the
measurement rectangle but additionally the margin around the
rectangle must fit into the image.  The width of the margin (in all
four directions) must be at least one pixel for bilinear
interpolation and two pixels for bicubic interpolation.  For
projection lines that do not fulfill this condition, no gray value
is computed.  Thus, no edge can be extracted at these positions.
</p>
<p>Please also note that the center coordinates of the arc are rounded
internally, so that the center lies on the pixel grid.
This is done to ensure consistency.</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<p>This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.</p>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="CenterRow" class="parname"><b><code><span data-if="hdevelop" style="display:inline">CenterRow</span><span data-if="c" style="display:none">CenterRow</span><span data-if="cpp" style="display:none">CenterRow</span><span data-if="com" style="display:none">CenterRow</span><span data-if="dotnet" style="display:none">centerRow</span><span data-if="python" style="display:none">center_row</span></code></b> (input_control)  </span><span>point.y <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>double</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>double</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>double</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Row coordinate of the center of the arc.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>100.0</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>0.0
          ≤
        
    <span data-if="hdevelop" style="display:inline">CenterRow</span>
    <span data-if="c" style="display:none">CenterRow</span>
    <span data-if="cpp" style="display:none">CenterRow</span>
    <span data-if="com" style="display:none">CenterRow</span>
    <span data-if="dotnet" style="display:none">centerRow</span>
    <span data-if="python" style="display:none">center_row</span>
    </code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>1.0</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>10.0</p>
</div>
  <div class="par">
<div class="parhead">
<span id="CenterCol" class="parname"><b><code><span data-if="hdevelop" style="display:inline">CenterCol</span><span data-if="c" style="display:none">CenterCol</span><span data-if="cpp" style="display:none">CenterCol</span><span data-if="com" style="display:none">CenterCol</span><span data-if="dotnet" style="display:none">centerCol</span><span data-if="python" style="display:none">center_col</span></code></b> (input_control)  </span><span>point.x <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>double</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>double</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>double</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Column coordinate of the center of the arc.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>100.0</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>0.0
          ≤
        
    <span data-if="hdevelop" style="display:inline">CenterCol</span>
    <span data-if="c" style="display:none">CenterCol</span>
    <span data-if="cpp" style="display:none">CenterCol</span>
    <span data-if="com" style="display:none">CenterCol</span>
    <span data-if="dotnet" style="display:none">centerCol</span>
    <span data-if="python" style="display:none">center_col</span>
    </code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>1.0</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>10.0</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Radius" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Radius</span><span data-if="c" style="display:none">Radius</span><span data-if="cpp" style="display:none">Radius</span><span data-if="com" style="display:none">Radius</span><span data-if="dotnet" style="display:none">radius</span><span data-if="python" style="display:none">radius</span></code></b> (input_control)  </span><span>number <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>double</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>double</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>double</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Radius of the arc.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>50.0</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>
    <span data-if="hdevelop" style="display:inline">Radius</span>
    <span data-if="c" style="display:none">Radius</span>
    <span data-if="cpp" style="display:none">Radius</span>
    <span data-if="com" style="display:none">Radius</span>
    <span data-if="dotnet" style="display:none">radius</span>
    <span data-if="python" style="display:none">radius</span>
    </code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>1.0</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>10.0</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>AnnulusRadius &lt;= Radius</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="AngleStart" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AngleStart</span><span data-if="c" style="display:none">AngleStart</span><span data-if="cpp" style="display:none">AngleStart</span><span data-if="com" style="display:none">AngleStart</span><span data-if="dotnet" style="display:none">angleStart</span><span data-if="python" style="display:none">angle_start</span></code></b> (input_control)  </span><span>angle.rad <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>double</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>double</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>double</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Start angle of the arc in radians.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.0</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>-3.14159, -2.35619, -1.57080, -0.78540, 0.0, 0.78540, 1.57080, 2.35619, 3.14159</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>-3.14159
          ≤
        
    <span data-if="hdevelop" style="display:inline">AngleStart</span>
    <span data-if="c" style="display:none">AngleStart</span>
    <span data-if="cpp" style="display:none">AngleStart</span>
    <span data-if="com" style="display:none">AngleStart</span>
    <span data-if="dotnet" style="display:none">angleStart</span>
    <span data-if="python" style="display:none">angle_start</span>
    
          ≤
          3.14159</code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>0.03142</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>0.31416</p>
</div>
  <div class="par">
<div class="parhead">
<span id="AngleExtent" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AngleExtent</span><span data-if="c" style="display:none">AngleExtent</span><span data-if="cpp" style="display:none">AngleExtent</span><span data-if="com" style="display:none">AngleExtent</span><span data-if="dotnet" style="display:none">angleExtent</span><span data-if="python" style="display:none">angle_extent</span></code></b> (input_control)  </span><span>angle.rad <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>double</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>double</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>double</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Angular extent of the arc in radians.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>6.28318</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>-6.28318, -5.49779, -4.71239, -3.92699, -3.14159, -2.35619, -1.57080, -0.78540, 0.78540, 1.57080, 2.35619, 3.14159, 3.92699, 4.71239, 5.49779, 6.28318</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>-6.28318
          ≤
        
    <span data-if="hdevelop" style="display:inline">AngleExtent</span>
    <span data-if="c" style="display:none">AngleExtent</span>
    <span data-if="cpp" style="display:none">AngleExtent</span>
    <span data-if="com" style="display:none">AngleExtent</span>
    <span data-if="dotnet" style="display:none">angleExtent</span>
    <span data-if="python" style="display:none">angle_extent</span>
    
          ≤
          6.28318</code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>0.03142</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>0.31416</p>
</div>
  <div class="par">
<div class="parhead">
<span id="AnnulusRadius" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AnnulusRadius</span><span data-if="c" style="display:none">AnnulusRadius</span><span data-if="cpp" style="display:none">AnnulusRadius</span><span data-if="com" style="display:none">AnnulusRadius</span><span data-if="dotnet" style="display:none">annulusRadius</span><span data-if="python" style="display:none">annulus_radius</span></code></b> (input_control)  </span><span>number <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>double</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>double</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>double</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Radius (half width) of the annulus.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>10.0</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>
    <span data-if="hdevelop" style="display:inline">AnnulusRadius</span>
    <span data-if="c" style="display:none">AnnulusRadius</span>
    <span data-if="cpp" style="display:none">AnnulusRadius</span>
    <span data-if="com" style="display:none">AnnulusRadius</span>
    <span data-if="dotnet" style="display:none">annulusRadius</span>
    <span data-if="python" style="display:none">annulus_radius</span>
    </code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>1.0</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>10.0</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>AnnulusRadius &gt; 0</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Width" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Width</span><span data-if="c" style="display:none">Width</span><span data-if="cpp" style="display:none">Width</span><span data-if="com" style="display:none">Width</span><span data-if="dotnet" style="display:none">width</span><span data-if="python" style="display:none">width</span></code></b> (input_control)  </span><span>extent.x <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">int</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Width of the image to be processed subsequently.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>512</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>128, 160, 192, 256, 320, 384, 512, 640, 768</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>0
          ≤
        
    <span data-if="hdevelop" style="display:inline">Width</span>
    <span data-if="c" style="display:none">Width</span>
    <span data-if="cpp" style="display:none">Width</span>
    <span data-if="com" style="display:none">Width</span>
    <span data-if="dotnet" style="display:none">width</span>
    <span data-if="python" style="display:none">width</span>
    </code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>1</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>16</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Height" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Height</span><span data-if="c" style="display:none">Height</span><span data-if="cpp" style="display:none">Height</span><span data-if="com" style="display:none">Height</span><span data-if="dotnet" style="display:none">height</span><span data-if="python" style="display:none">height</span></code></b> (input_control)  </span><span>extent.y <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">int</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Height of the image to be processed subsequently.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>512</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>120, 128, 144, 240, 256, 288, 480, 512, 576</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>0
          ≤
        
    <span data-if="hdevelop" style="display:inline">Height</span>
    <span data-if="c" style="display:none">Height</span>
    <span data-if="cpp" style="display:none">Height</span>
    <span data-if="com" style="display:none">Height</span>
    <span data-if="dotnet" style="display:none">height</span>
    <span data-if="python" style="display:none">height</span>
    </code> (lin)</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>1</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>16</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Interpolation" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Interpolation</span><span data-if="c" style="display:none">Interpolation</span><span data-if="cpp" style="display:none">Interpolation</span><span data-if="com" style="display:none">Interpolation</span><span data-if="dotnet" style="display:none">interpolation</span><span data-if="python" style="display:none">interpolation</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Type of interpolation to be used.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'nearest_neighbor'</span>
    <span data-if="c" style="display:none">"nearest_neighbor"</span>
    <span data-if="cpp" style="display:none">"nearest_neighbor"</span>
    <span data-if="com" style="display:none">"nearest_neighbor"</span>
    <span data-if="dotnet" style="display:none">"nearest_neighbor"</span>
    <span data-if="python" style="display:none">"nearest_neighbor"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'bicubic'</span><span data-if="c" style="display:none">"bicubic"</span><span data-if="cpp" style="display:none">"bicubic"</span><span data-if="com" style="display:none">"bicubic"</span><span data-if="dotnet" style="display:none">"bicubic"</span><span data-if="python" style="display:none">"bicubic"</span>, <span data-if="hdevelop" style="display:inline">'bilinear'</span><span data-if="c" style="display:none">"bilinear"</span><span data-if="cpp" style="display:none">"bilinear"</span><span data-if="com" style="display:none">"bilinear"</span><span data-if="dotnet" style="display:none">"bilinear"</span><span data-if="python" style="display:none">"bilinear"</span>, <span data-if="hdevelop" style="display:inline">'nearest_neighbor'</span><span data-if="c" style="display:none">"nearest_neighbor"</span><span data-if="cpp" style="display:none">"nearest_neighbor"</span><span data-if="com" style="display:none">"nearest_neighbor"</span><span data-if="dotnet" style="display:none">"nearest_neighbor"</span><span data-if="python" style="display:none">"nearest_neighbor"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="MeasureHandle" class="parname"><b><code><span data-if="hdevelop" style="display:inline">MeasureHandle</span><span data-if="c" style="display:none">MeasureHandle</span><span data-if="cpp" style="display:none">MeasureHandle</span><span data-if="com" style="display:none">MeasureHandle</span><span data-if="dotnet" style="display:none">measureHandle</span><span data-if="python" style="display:none">measure_handle</span></code></b> (output_control)  </span><span>measure <code>→</code> <span data-if="dotnet" style="display:none"><a href="HMeasure.html">HMeasure</a>, </span><span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">HHandle</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (handle)</span><span data-if="dotnet" style="display:none"> (<i>IntPtr</i>)</span><span data-if="cpp" style="display:none"> (<i>HHandle</i>)</span><span data-if="c" style="display:none"> (<i>handle</i>)</span></span>
</div>
<p class="pardesc">Measure object handle.</p>
</div>
<h2 id="sec_result">结果</h2>
<p>If the parameter values are correct, 该算子
<code><span data-if="hdevelop" style="display:inline">gen_measure_arc</span><span data-if="c" style="display:none">gen_measure_arc</span><span data-if="cpp" style="display:none">GenMeasureArc</span><span data-if="com" style="display:none">GenMeasureArc</span><span data-if="dotnet" style="display:none">GenMeasureArc</span><span data-if="python" style="display:none">gen_measure_arc</span></code> 返回值 <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .  Otherwise an
exception is raised.</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="draw_circle.html"><span data-if="hdevelop" style="display:inline">draw_circle</span><span data-if="c" style="display:none">draw_circle</span><span data-if="cpp" style="display:none">DrawCircle</span><span data-if="com" style="display:none">DrawCircle</span><span data-if="dotnet" style="display:none">DrawCircle</span><span data-if="python" style="display:none">draw_circle</span></a></code>
</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="measure_pos.html"><span data-if="hdevelop" style="display:inline">measure_pos</span><span data-if="c" style="display:none">measure_pos</span><span data-if="cpp" style="display:none">MeasurePos</span><span data-if="com" style="display:none">MeasurePos</span><span data-if="dotnet" style="display:none">MeasurePos</span><span data-if="python" style="display:none">measure_pos</span></a></code>, 
<code><a href="measure_pairs.html"><span data-if="hdevelop" style="display:inline">measure_pairs</span><span data-if="c" style="display:none">measure_pairs</span><span data-if="cpp" style="display:none">MeasurePairs</span><span data-if="com" style="display:none">MeasurePairs</span><span data-if="dotnet" style="display:none">MeasurePairs</span><span data-if="python" style="display:none">measure_pairs</span></a></code>, 
<code><a href="fuzzy_measure_pos.html"><span data-if="hdevelop" style="display:inline">fuzzy_measure_pos</span><span data-if="c" style="display:none">fuzzy_measure_pos</span><span data-if="cpp" style="display:none">FuzzyMeasurePos</span><span data-if="com" style="display:none">FuzzyMeasurePos</span><span data-if="dotnet" style="display:none">FuzzyMeasurePos</span><span data-if="python" style="display:none">fuzzy_measure_pos</span></a></code>, 
<code><a href="fuzzy_measure_pairs.html"><span data-if="hdevelop" style="display:inline">fuzzy_measure_pairs</span><span data-if="c" style="display:none">fuzzy_measure_pairs</span><span data-if="cpp" style="display:none">FuzzyMeasurePairs</span><span data-if="com" style="display:none">FuzzyMeasurePairs</span><span data-if="dotnet" style="display:none">FuzzyMeasurePairs</span><span data-if="python" style="display:none">fuzzy_measure_pairs</span></a></code>, 
<code><a href="fuzzy_measure_pairing.html"><span data-if="hdevelop" style="display:inline">fuzzy_measure_pairing</span><span data-if="c" style="display:none">fuzzy_measure_pairing</span><span data-if="cpp" style="display:none">FuzzyMeasurePairing</span><span data-if="com" style="display:none">FuzzyMeasurePairing</span><span data-if="dotnet" style="display:none">FuzzyMeasurePairing</span><span data-if="python" style="display:none">fuzzy_measure_pairing</span></a></code>
</p>
<h2 id="sec_alternatives">可替代算子</h2>
<p>
<code><a href="edges_sub_pix.html"><span data-if="hdevelop" style="display:inline">edges_sub_pix</span><span data-if="c" style="display:none">edges_sub_pix</span><span data-if="cpp" style="display:none">EdgesSubPix</span><span data-if="com" style="display:none">EdgesSubPix</span><span data-if="dotnet" style="display:none">EdgesSubPix</span><span data-if="python" style="display:none">edges_sub_pix</span></a></code>
</p>
<h2 id="sec_see">参考其它</h2>
<p>
<code><a href="gen_measure_rectangle2.html"><span data-if="hdevelop" style="display:inline">gen_measure_rectangle2</span><span data-if="c" style="display:none">gen_measure_rectangle2</span><span data-if="cpp" style="display:none">GenMeasureRectangle2</span><span data-if="com" style="display:none">GenMeasureRectangle2</span><span data-if="dotnet" style="display:none">GenMeasureRectangle2</span><span data-if="python" style="display:none">gen_measure_rectangle2</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
1D Metrology</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
